1.Field of the Invention
The present invention is directed to altering inputs to, and generating feedforward signals for, a dynamic system so as to reduce unwanted vibrations in the system. The invention has particular utility in speeding up computer disk drives by reducing unwanted vibrations which, if unchecked, could lead to disk read/write errors or excessive noise.
2. Description of the Related Art
Movement in dynamic systems typically results in unwanted vibrations that are both mechanical and acoustic in nature. These vibrations can have a detrimental affect on the operation of such systems. One dynamic system that is particularly sensitive to unwanted vibrations is a computer disk drive.
A computer disk drive includes an actuator arm having a head mounted at a distal end of the arm for reading from, and writing to, tracks on a magnetic disk. This head is moved by the arm from track-to-track on the disk. Vibrations in the system result from this movement. That is, the head and actuator arm vibrate after reaching a nominal final position. Reading and writing cannot take place by the disk drive until these vibrations go below a certain level; otherwise read/write errors occur. These vibrations may also cause noise.
The period during which the disk drive waits for these vibrations to reach an acceptable level (i.e., the settling time) increases the disk drive""s seek time. The drive""s seek time comprises the time it takes for the drive""s head to come to rest at a position where the head can perform a read/write operation on a particular track. The increase in seek time can be especially acute in cases where the track-per-inch density of the magnetic disk is high. That is, because tracks in these disks are relatively close together, even small vibrations in the head can seriously affect the accuracy of the disk drive and/or increase noise in the drive. Since even small vibrations cannot be tolerated, the settling time is further increased, thereby further increasing the drive""s seek time.
Conventional attempts at addressing the foregoing problems in both disk drives and dynamic systems in general have fallen short of satisfactory. That is, such attempts are too computationally intensive to be practical, have failed to provide sufficient reduction in vibrations for use in high accuracy positioning equipment such as computer disk drives, produce sub-optimal trajectories, and/or are overly sensitive to system parameter variations.
Other related problems also plague conventional disk drives. For example, in conventional disk drives, two different controllers are used to position the drive""s head on a track. A first controller controls the drive""s head to reach a predetermined position near to a final position, at which point a second controller takes over. This second controller moves the head into the final position and regulates the head on a track. Switching between these two controllers increases settling time and, as a result, increases seek time. Also, in conventional disk drives, little or no control over vibrations is included in the derivation of these controllers. Consequently, conventional disk drives may not be able to discern important variations during motion transients.
In view of the above, there exists a need for a way to control computer disk drives and, more generally, dynamic systems, which reduces both mechanical and acoustic vibrations to an acceptable level without undue computational effort and without a substantial reduction in movement speed.
The present invention addresses the foregoing needs by providing methods of controlling movement in a dynamic system so as to reduce mechanical and/or acoustic unwanted vibrations in the system. These methods are relatively easy to perform, produce good results, and have few adverse side effects, thereby making them a significant improvement over the prior art.
In one aspect, the invention determines which parameter will cause a dynamic system to saturate. For example, in the case of a computer disk drive, current commands control the system. However, voltage is the fundamental limiting parameter of the system, since voltage supplied by the drive""s power supply limits the amount of current in the system. In this aspect, the fundamental limiting parameter is used to generate a command for the system which reduces vibrations without causing the system to saturate. In the specific case of a disk drive, the fundamental limiting parameter (i.e., voltage) is also used to generate current commands that do not exceed the voltage limitations of the system.
In another aspect of the invention, a disk drive system is modeled using partial fraction expansion equations. The digital form of those equations is as follows:                     Finalpos        =                              ∑                          i              =              1                        N                    ⁢                                    V              i                        ⁢            A            ⁢                          xe2x80x83                        ⁢            Δ            ⁢                          xe2x80x83                        ⁢            t                                                  0        =                              ∑                          i              =              1                        N                    ⁢                                    V              i                        ⁢                          Ab                              b                -                a                                      ⁢                          (                                                ⅇ                                      -                                          a                      ⁡                                              (                                                                              T                            end                                                    -                                                      T                            i                                                    +                                                      Δ                            ⁢                                                          xe2x80x83                                                        ⁢                            t                                                                          )                                                                                            -                                  ⅇ                                      -                                          a                      ⁡                                              (                                                                              T                            end                                                    -                                                      T                            i                                                                          )                                                                                                        )                                                                        0          =                                    ∑                              i                =                1                            N                        ⁢                                          V                i                            ⁢                              Aa                                  a                  -                  b                                            ⁢                              (                                                      ⅇ                                          -                                              b                        ⁡                                                  (                                                                                    T                              end                                                        -                                                          T                              i                                                        +                                                          Δ                              ⁢                                                              xe2x80x83                                                            ⁢                              t                                                                                )                                                                                                      -                                      ⅇ                                          -                                              b                        ⁡                                                  (                                                                                    T                              end                                                        -                                                          T                              i                                                                                )                                                                                                                    )                                                    ,            
where Finalpos is a final position of the system, A is a scaling factor, a and b are inverse time constants, tend is the time at which a move is completed, Vi are voltage inputs to the system, Tl are the times at which Vi are input, and xcex94t is a time interval at which Vi are input. Using the above equations, system inputs which produce reduced vibrations can be determined. These equations are particularly powerful when used to solve for a system input in terms of its fundamental limiting parameter. Additional constraints may also be included in the above equations in order to provide a more accurate model of the system.
In still another aspect of the invention, techniques are provided for reducing system vibrations in its various modes. These techniques may be used alone or in conjunction with the concepts set forth above. One such technique comprises incorporating vibration limiting and sensitivity constraints into the partial fraction expansion equation model so as to reduce vibrations to specific levels. Another technique comprises shaping (e.g., convolving or filtering) a command determined using the partial fraction expansion equation model to produce a desired output. The entire command may be shaped or only selected portions thereof which produce vibrations. Selective shaping is preferred since it reduces seek time relative to shaping the entire command. Another technique involves commanding in current to produce saturation in voltage. By doing this, it is possible to command voltage switches. The times at which the switches occur can then be set to reduce system vibrations. Other techniques are also provided. These include varying transient portions at the beginning, middle and/or end of a move and using Posicast inputs, among others.
In still another aspect, the invention determines an input to the system that will result in limited (or reduced) vibrations, and uses that input as a feedforward trajectory for the system. Several approaches are provided for generating the input, including performing an optimization method on the partial fraction expansion equations. In one approach, the problem of generating an input is separated into a rigid mode problem and a flexible mode problem. Specifically, terms associated with the rigid mode of the system are determined from the partial fraction expansion equations, and terms associated with oscillating or flexible modes of the system are determined based on a system analysis. The rigid body terms are solved for an input which drives the system so as to satisfy its rigid body constraints. This input is then shaped using, e.g., an Input Shaper(trademark) designed to compensate for the flexible modes of the system. Using this approach, the computational difficulty of obtaining a solution is reduced relative to the optimization approach, while still providing an adequate reduction in levels of vibrations in relevant modes of the system. Another approach to generating the input involves creating a closed-loop model of the system. An input which results in reduced vibrations may then be generated based on this model. In still another approach, voltage switch times for a bang-bang input that reduces vibrations are determined based on the partial fraction expansion equations. Input Shaping(trademark) may then be applied to that input so as to provide a further reduction in vibrations.
In other aspects of the invention, various position-velocity (xe2x80x9cPVxe2x80x9d) table formulations are provided for reducing system vibrations. In one approach, a trajectory which reduces system vibrations is generated in accordance with one or more of the techniques set forth above, and that trajectory stored in a PV table. The trajectory can then be used to control movement of the system. In another approach, a shaper is provided at the output of a PV table, and its inverse is provided along the system""s feedback path. This arrangement reduces system dynamics via the feedforward direction, and restores loop stability in the feedback direction. In still another approach, an N (N greater than 2) dimensional PV table is used to control a system, in which velocity is a function of position and one or more other variables, such as movement distance, resistance, temperature, etc. In yet another PV approach, current commands are shaped at transition(s) (e.g., at deceleration) so as to yield desired levels of vibrations. During non-transitional states, a trajectory in a PV table is followed.
While the above-summarized methods significantly enhance the operation of dynamic systems, such as computer disk drives and other data storage devices, it is also preferable to allow end-users some control over the system""s operation. For example, a user may want a disk drive that has a relatively low seek time (i.e., a disk drive that is fast), but may not care about acoustics. Similarly, the user may be more focused on acoustics than on seek time. Thus, there exists a need for a way by which an end-user can control operation of a disk drive. In particular, there exists a need for a simple way to control operation of the disk drive, which permits the user to select operational parameters, such as seek time and acoustic levels, in addition to other features.
The present invention addresses these needs by providing a GUI and/or mechanical switch(es) through which an end-user may alter operational parameters of a disk drive, including, but not limited to, the drive""s seek time, noise level, and power consumption. By providing these features, the invention enables the user to customize operation of a disk drive relatively easily without requiring significant hardware and/or software modifications.
This brief summary has been provided so that the nature of the invention may be understood quickly. A more complete understanding of the invention can be obtained by reference to the following detailed description of the preferred embodiments thereof in connection with the attached drawings.